1. Field of the Invention
The present invention relates to a method and an apparatus which control printing by a multifunctional printer capable of performing, e.g., printing of an image or the like based on data received by facsimile communication, in addition to printing of print data sent from a host apparatus.
2. Related Background Art
Conventionally, a print mechanism which adopts a host-base printer as a multifunctional printer is known.
Incidentally, there is known a “PDL (page description language) printer” which receives PDL data from a host computer, performs a rendering process or the like to the received data by interpreting it, generates print data based on the rendering-processed data, and then prints the generated data. Unlike the PDL printer, the host-base printer receives print data generated based on the rendering process or the like on the side of the host computer, and then prints the received data. Since the host-base printer can sufficiently use the capability on the side of the host computer, the structure on the side of the printer can be simplified, whereby an inexpensive print mechanism can be provided.
Incidentally, in the multifunctional printer to which the host-base printer as above is adopted, it is necessary to print, in addition to the image based on the print data sent from the host computer, an image based on the data received in facsimile communication.
The multifunctional printer of this type might receive facsimile data while it is printing the print data sent from the host computer. In such a case, conventionally, when the facsimile data is received, the printer once discontinues printing the data sent from the host computer and instead prints the received facsimile data.
The process in this case will be explained in detail with reference to FIG. 19.
FIG. 19 is a timing chart showing a facsimile reception process during a print process in a conventional information processing system (composed of a host computer and a multifunctional machine). Here, it is assumed that time runs from the left to the right in the drawing.
In FIG. 19, symbol R1 represents a rendering process of the first page in a print job by the host computer (a printer driver). Here, it should be noted that the rendering process is to expand print-target data into a print image and then compress this image according to run-length encoding. In the following explanation, the numeral included in the symbol represents the target page number.
Symbol T1 represents a process to transfer the print data of the first page from the host computer to the multifunctional machine.
Symbol P1 represents a process of a printer engine of the multifunctional machine to print the print data of the first page sent from the host computer.
Symbol FP1 represents a process of the printer engine of the multifunctional machine to print the facsimile data of the first page.
Symbol FPr1 represents a process of the printer engine of the multifunctional machine to exchange a protocol signal to a partner's station to receive the facsimile data of the first page, symbol FR1 represents a process to actually receive the facsimile data of the first page, and an symbol D1 represents a process to transfer the facsimile data of the first page received by a facsimile unit to a printer controller through a DMA (direct memory access) channel.
First, the rendering process of the print job by the host computer starts (R1 in FIG. 19). Then, if a call signal is input from a telephone line to the facsimile unit (CI) while the print data of the first page is being transferred and printed (T1, P1), an off-hook operation is performed to start a protocol process of facsimile communication (FPr1), and the facsimile data of the first page is received (FR1). Thus, by such a series of processes, a start of the facsimile data reception is notified to the host computer, and the printing of the print data is discontinued at the time that the printing of the first page ends, whereby the printer comes to be on standby for the facsimile data printing.
If the reception of the facsimile data of the first page ends (FR1), the received data is transferred to the printer controller (D1), and the printing of the transferred data starts (FP1). Then, after the reception of the data of the first page ends, the facsimile unit performs the protocol process for the facsimile data of the second page (FPr2), whereby the facsimile data of the second page is received (FR2). After the reception of the facsimile data of the second page ends, the received data is transferred to the printer controller (D2), and the transferred data is printed (FP2). Then, if the printing of the facsimile data ends as a whole, the discontinued print job restarts. That is, after the rendering process is performed (R2), the print data from the second page is transferred from the host computer to the multifunctional machine (T2), and the transferred data is printed (P2).
As described above, conventionally, if the facsimile data is received during the printing of the data sent from the host computer, the printing of the data sent from the host computer is discontinued, and interrupt for the facsimile data printing is performed. Therefore, even if the printing of the print data will end by another one page (for a short while), the interrupt for the facsimile data printing is performed, whereby there is inconvenience that the print job on the side of the host computer has to wait for the end of the printing of the facsimile data.
On the other hand, if the facsimile data is received while the data sent from the host computer is being printed, there might be of course a large amount of the remainder of the print data sent from the host computer.
In this case, although the print data sent from the side of the host computer is sequentially rendering-processed and transferred after the printing of the facsimile data ends, the printer engine of the multifunctional machine is in an operation suspend state during the rendering and transfer processes, whereby the operation is inefficient as a whole.